function log(s){
    console.log(s)
}
// class Parent{
//     constructor(name,age){
//         this.name=name;
//         this.age=age;
//     }
// }
// class Children extends Parent{
//     constructor(name,age,sex){
//         super(name,age);
//         this.sex=sex;
//     }
// }
// var child=new Children('zhangsn',11,'男')
// var keys=Object.keys(child);
// console.log(keys)
// const proto={
//     x:'hello',
//     foo(){
//         console.log(this.x);
//     }
// }
// const obj={
//     x:'world',
//     foo(){
//         super.foo();
//     }
// }
// Object.setPrototypeOf(obj,proto);
// obj.foo();
// let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 };
// console.log(x,y,z);
// var o={...'hello'}
// console.log(o)
// var o=Object.assign(2)
// console.log(o)
// let obj={foo:'bar',baz:42};
// let map=new Map(Object.entries(obj));
// console.log(map.get('foo'))
// const map = new Map().set('foo', true).set('bar', false);
// let obj=Object.fromEntries(map)
// console.log(obj)
// var s1=Symbol('ss')
// var s2=Symbol('ss')
// console.log(s1===s2)
// let obj = {
//     [Symbol('my_key')]: 1,
//     enum: 2,
//     nonEnum: 3
// };
// var res=Reflect.ownKeys(obj)
// console.log(res);
// const s = new Set();

// [2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x));
// log(s)
// let set = new Set();

// set.add({});

// set.add({});
// log(set)
// function strMaptoObj(map){
//     let obj=Object.create(null);
//     for(let [key,value] of map){
//         obj[key]=value;
//     }
//     return obj;
// }
// const myMap = new Map()
//   .set('yes', true)
//   .set('no', false);
// var res=strMaptoObj(myMap);
// log(res);

// function ObjToMap(obj) {
//     let map=new Map();
//     for(let key of Object.keys(obj)){
//         map.set(key,obj[key]);
//     }
//     return map;
// }
// var res=ObjToMap({yes: true, no: false});
// log(res);
// function MapToJson(map){
//     return JSON.stringify(strMaptoObj(map));
// }
// let myMap = new Map().set('yes', true).set('no', false);
// let res=MapToJson(myMap);
// log(res);
// const target=Object.defineProperties({},{
//     foo:{
//         value:123,
//         writable:true,
//         configurable:true
//     }
// });
// const hander={
//     get(target,property){
//         return 'abc';
//     }
// }
// var proxy=new Proxy(target,hander);
// log(proxy.foo);
// const f = () => console.log('now');
// Promise.try(f);
// console.log('next');
